/**
 * 
 * @authors 前端小灰狼
 * @date    2020-12-10 16:48:28
 * @version v1.0
 * @description the core js of todolist project
 * 
 * ━━━━━━神兽出没━━━━━━
 * 　　   ┏┓　 ┏┓
 * 　┏━━━━┛┻━━━┛┻━━━┓
 * 　┃              ┃
 * 　┃       ━　    ┃
 * 　┃　  ┳┛ 　┗┳   ┃
 * 　┃              ┃
 * 　┃       ┻　    ┃
 * 　┃              ┃
 * 　┗━━━┓      ┏━━━┛ Code is far away from bugs with the animal protecting.
 *       ┃      ┃     神兽保佑,代码无bug。
 *       ┃      ┃
 *       ┃      ┗━━━┓
 *       ┃      　　┣┓
 *       ┃      　　┏┛
 *       ┗━┓┓┏━━┳┓┏━┛
 *     　  ┃┫┫　┃┫┫
 *     　  ┗┻┛　┗┻┛
 *
 * ━━━━━━感觉萌萌哒━━━━━━
 */
// 添加todoList
$("#title").on("keydown", function (event) {
    let html = "";
    if (event.keyCode === 13) {
        event.preventDefault();
        html += `<li>
                    <input type="checkbox" />
                    <p>${$("#title").val().trim()}</p>
                    <a href="javascript:;">-</a>
                </li>`
        $("#todolist").append(html);
        $("#title").val("");
        changeNum();
        changeDoneNum();
    }
})

// 正在进行列表（修改）
// - 点击复选框 将其移入到已经完成列表
let $to_over_list = $("#todolist");
$to_over_list.on("change", "input[type='checkbox']", function () {
    $("#donelist").append($(this).parent());
    changeNum();
    changeDoneNum();
})

// - 点击文本 更改待办事项
$("#todolist").on("click", "p", function (event) {
    var td = $(this);
    var txt = td.text();
    var input = $("<input type='text'value='" + txt + "'/>");
    td.append(input);
    input.click(function () { return false; });
    input.trigger("focus");
    input.blur(function () {

        var newtxt = $(this).val();
        if (newtxt != txt) {
            td.html(newtxt);
        }
    })
})

// - 更改计数数量
function changeNum() {
    console.log($("#todolist li").length);
    $("#todocount").text($("#todolist li").length);
}

// - 实现删除
$("#todolist").on("click", "a", function () {
    $(this).parent().remove();
    changeNum();
    changeDoneNum();
})


// 已完成列表
$("#donelist").on("change", "input[type='checkbox']", function () {
    console.log(1);
    $("#todolist").append($(this).parent());
    changeNum();
    changeDoneNum();
})
// - 更改计数数量
function changeDoneNum() {
    console.log($("#donelist li").length);
    $("#donecount").text($("#donelist li").length);
}
// - 更改待办事项
$("#donelist").on("click", "p", function (event) {
    var td = $(this);
    var txt = td.text();
    var input = $("<input type='text'value='" + txt + "'/>");
    td.append(input);
    input.click(function () { return false; });
    input.trigger("focus");
    input.blur(function () {

        var newtxt = $(this).val();
        if (newtxt != txt) {
            td.html(newtxt);
        }
    })
})

// - 实现删除
$("#donelist").on("click", "a", function () {
    $(this).parent().remove();
    changeNum();
    changeDoneNum();
})

// localStorage 存储
for (let i = 0; i < $("#todolist li").length; i++) {

}


// footer部分 
// - 跨域阻塞问题  发出JSONP请求，但服务器端正在使用JSON进行响应  
// 更换fastmoke
$(function () {
    $.ajax({
        type: "get",
        // url: "https://api.iynn.cn/getIpInfo",
        url: "https://www.fastmock.site/mock/5199a9d4f7bb99d4ffb8eb29bef98c7a/_data/api/text",
        // dataType: "jsonp",
        // jsonp: "callback",
        // jsonpCallback: "getIpAndAddress",
        // cache: false,
        success: function (res) {
            console.log(res);
            $("#ipv4").html(res.data.ip);
            $("#addr").html(res.data.country + "&emsp;"+ res.data.area);
        },
        error: function (err) {
            console.log(err);
        }
    })
});



